/*$Id: WidgetServiceAsync.java 33 2008-02-25 18:12:57Z glenn $*/
package com.leetech.gwt.client;

import com.google.gwt.user.client.rpc.AsyncCallback;
import com.leetech.gwt.client.WidgetController.WidgetDTO;

/**
 * The async call interface for {@link WidgetService}.
 *
 * @author Last modified by $LastChangedBy: glenn $.
 * @version $Rev: 33 $ $Date: 2008-02-25 08:12:57 -1000 (Mon, 25 Feb 2008) $.
 */
public interface WidgetServiceAsync {
    // Static initialization--------------------------------------------
    // Instance variables-----------------------------------------------
    // Constructors-----------------------------------------------------
    // Methods----------------------------------------------------------

    /**
     * The client will call this method to get the data to initialize
     * a set of {@link RCWidget}s.
     *
     * @param emptyData An array of {@link QueryWidgetDTO} objects
     * which need to be populated.
     * @return A {@link QueryWidgetDTO}[] array of populated instances.
     */
    public void syncWidgetDTOs(WidgetDTO[] clientDTOs,
                                    AsyncCallback callback);

    // Inner classes----------------------------------------------------
}
